<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018\8\31 0031
 * Time: 11:55
 */

namespace app\Lib\InterfaceIn\User;


use app\Lib\InterfaceIn\Role\RoleHandle;

interface UserHandle
{
    public function __construct($uid,$cache);
    /**
     * 获取用户id
     * @return int
     */
    public function getUid();

    /**
     * 用户账号
     * @return string
     */
    public function getAccount();

    /**
     * 用户角色类
     * @return RoleHandle |bool
     */
    public function getRoleClass();

    /**
     * 获取用户权限类
     * @return mixed
     */
    public function getAuthClass();

    /**
     * 用户密码(未加密)
     * @return string
     */
    public function getPassword();

    /**
     * 获取用户名称
     * @return string
     */
    public function getNickName();
    /**
     * 删除用户类所有缓存
     * @return bool
     */
    public function delUserCache();

    /**
     * 判断用户是否被禁用
     * @return bool
     */
    public function isAllowLogin();
    /**
     * 获取用户电话
     * @return string
     */
    public function getPhone();

    /**
     * 获取用户最后登陆时间
     * @return mixed
     */
    public function getLastLoginTime();

    /**
     * 获取性别
     * @return int
     */
    public function getSex();

    /**
     * 性别中文
     * @return mixed
     */
    public function getSexStr();

    /**
     * 获取生日
     * @return mixed
     */
    public function getBirthday();

}